package stringbuilder01;
/*
   +号与StringBuilder之间的联系
 */
public class StringBuilderDemo08 {
    public static void main(String[] args) {
        //method01();

        String str = "c";
        String str2 =str+ "efg";  //如果通过+号拼接的内容中含有变量，那么底层就会创建StringBuilder对象来拼接
                                  //在编译后这句代码会替换为：
                                  //  StringBuilder sb=new StringBuilder();
                                  //   sb.append(str);
                                  //   sb.append("efg"）;
                                  //   String str2 = sb.toString();
                                  // 最终的代码： String str2 = new StringBuilder().append(str).append("efg").toString();
        System.out.println(str2);
    }

    private static void method01() {
        String str = "a" + "b";  //如果通过+号拼接的都是常量，那么底层会有常量优化机制
                                 //在编译后，直接把这句代码替换为：String str="ab";
        System.out.println(str);
    }
}
